1
Kontrak ISA dan Status Arsitektur
AI031Lesson 3
00:00

The Arsitektur Set Instruksi (ISA) berfungsi sebagai tingkat abstraksi dasar tingkat abstraksi dan merupakan kontrak formal antara perangkat lunak dan perangkat keras. Meskipun bahasa tingkat tinggi seperti C menyembunyikan kompleksitas, ISA mengungkapkan status arsitektur—konfigurasi presisi dari register dan memori prosesor.

1. Status Arsitektur

CPU x86-64 mendefinisikan statusnya melalui beberapa komponen utama:

  • Penghitung Program (%rip): Menyimpan alamat instruksi berikutnya.
  • File Register Bilangan Bulat: 16 register umum (misalnya, %rax, %rbx) yang menyimpan nilai 64-bit.
  • Kode Kondisi: Bendera (ZF, SF, CF, OF) untuk alur kontrol.
  • Register Vektor: Seperti register YMM (256 bit) untuk operasi SIMD.

2. Abstraksi Memori

Kode mesin melihat memori sebagai array yang dapat diindeks byte. Meskipun x86-64 mendukung alamat virtual 64-bit, implementasi saat ini sering menggunakan ruang alamat 48-bit ($2^{48}$ byte). Kita mengelompokkan ukuran data sebagai Kata (16-bit), Kata ganda (32-bit), dan Kata kuad (64-bit).

CPU (Status)%rip (PC)Register (%rax..)Kode KondisiKONTRAK ISAmovq, ret, leaqMemori Virtual0xFFFF... (Tumpukan)0x0000... (Kode)

3. Evolusi dan Kompatibilitas

Didorong oleh Hukum Moore, Intel telah berkembang dari 8086 ke Core i7 Haswell. ISA menjamin kompatibilitas mundur, memungkinkan kode mesin lama berjalan pada perangkat keras modern dengan banyak core dan threading hiper.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>